package algo3.pruebas.armasTest;

import algo3.modelo.Posicion;
import algo3.modelo.armas.Arma;

abstract class MinaTestConHerencia extends ArmaTestConHerencia {

	
	abstract Arma crearArma(Posicion posicion);
	
	public void testPasanDosTurnosYSeVerificaQueDevuelveDaniosPuesSeActivo() {
		Posicion posicion = new Posicion(4,5);
		Arma mina = crearArma(posicion);
		mina.avanzarTurno();
		mina.avanzarTurno();
		assertTrue(mina.getListaDeDanios().size() > 0);
	}

	public void testPasanTresTurnoYSeVerificaQueLaMinaPuesSeGasto() {
		Posicion posicion = new Posicion(4,5);
		Arma mina = crearArma(posicion);
		mina.avanzarTurno();
		mina.avanzarTurno();
		mina.avanzarTurno();
		assertEquals(0, mina.getListaDeDanios().size());
	}

	public void testNoObtenerDaniosDeUnaMinaPuesTodaviaNoSeActivo() {
		Posicion posicion = new Posicion(4,5);
		Arma mina = crearArma(posicion);
		assertEquals(0, mina.getListaDeDanios().size());
	}

}
